/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package DAO;

import Entidades.ContenidoEnt;
import Utilidades.Conexion;
import Utilidades.Constantes;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;

/**
 *
 * @author usuario
 */
public class ContenidoDAO {
    
    Conexion con;
    Connection connect;
    

    
    public int ingresarContenido(ContenidoEnt contenido) throws SQLException{
    
        int ingresar = 0;
        con = new Conexion();
        connect = con.getCon();
 
        try {
            PreparedStatement st = connect.prepareStatement(Constantes.INSERT_CONTENIDO);
            
            
            st.setString(1, contenido.getTitulo());
            st.setString(2, contenido.getContenido());
            st.setString(3, contenido.getSeccion());

            
            st.executeUpdate();
            ingresar = 1;
            connect.close();
            
            
        } catch (SQLException ex) {
            Logger.getLogger(ContenidoDAO.class.getName()).log(Level.SEVERE, null, ex);
            connect.close();
        }
        
        return ingresar;
    }
    
        
     public List<ContenidoEnt> busquedaCotenido(ContenidoEnt cont) throws SQLException{
    
         List<ContenidoEnt>  lstContenido = new ArrayList<ContenidoEnt>();
         ContenidoEnt contenido;
        con = new Conexion();
        connect = con.getCon();
 
        try {
            
            PreparedStatement st = connect.prepareStatement(Constantes.CONSULTAR_CONTENIDO_POR_TITULO);
            
            
            st.setString(1, cont.getTitulo());
            
            ResultSet rs = st.executeQuery();
            
            if(rs != null){
                while (rs.next()) {
                    
                    contenido = new ContenidoEnt();
                    
                    contenido.setContenido(rs.getString("CONTENIDO"));
                    contenido.setSeccion(rs.getString("SECCION"));
                    contenido.setTitulo(rs.getString("TITULO"));
                    contenido.setIdContenido(Integer.parseInt(rs.getString("IDCONTENIDO")));
                    
                    lstContenido.add(contenido);
                }
            }
            connect.close();
        } catch (SQLException ex) {
            Logger.getLogger(ContenidoDAO.class.getName()).log(Level.SEVERE, null, ex);
            connect.close();
        }
        
        return lstContenido;
    }
     
     
     public List<ContenidoEnt> busquedaCuatroCotenidos() throws SQLException{
    
         List<ContenidoEnt>  lstContenido = new ArrayList<ContenidoEnt>();
         ContenidoEnt contenido;
        con = new Conexion();
        connect = con.getCon();
 
        try {
            
            PreparedStatement st = connect.prepareStatement(Constantes.BUSCAR_CONTENIDO_POR_ID);
            
            ResultSet rs = st.executeQuery();
            
            if(rs != null){
                while (rs.next()) {
                    
                    contenido = new ContenidoEnt();
                    
                    contenido.setContenido(rs.getString("CONTENIDO"));
                    contenido.setSeccion(rs.getString("SECCION"));
                    contenido.setTitulo(rs.getString("TITULO"));
                    
                    lstContenido.add(contenido);
                }
            }
            connect.close();
        } catch (SQLException ex) {
            Logger.getLogger(ContenidoDAO.class.getName()).log(Level.SEVERE, null, ex);
            connect.close();
        }
        
        return lstContenido;
    }
      
   
   public int actualizarContenido(ContenidoEnt contenido) throws SQLException{
    
        int ingresar = 0;
        con = new Conexion();
        connect = con.getCon();
 
        try {
            PreparedStatement st = connect.prepareStatement(Constantes.ACTUALIZAR_CONTENIDO);
           
            st.setString(1, contenido.getTitulo());
            st.setString(2, contenido.getContenido());
            st.setString(3, contenido.getSeccion());
            st.setInt(4, contenido.getIdContenido());
            
            st.executeUpdate();
            ingresar = 1;
            connect.close();
            
        } catch (SQLException ex) {
            
            Logger.getLogger(ContenidoDAO.class.getName()).log(Level.SEVERE, null, ex);
            connect.close();
        }
        
        return ingresar;
    }
    
     
  
}
